package com.whz.access;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

/**
 * @ClassName ArrayField
 * @Description TODO 关于私有数组成员的访问方法 防止客户端修改数组中的内容
 * @Author hong-zhi
 * @Date 2021/5/4 19:37
 * @Version 1.0
 */
public class ArrayField {
    private static final String[] PRIVATE_VALUES = {"whz", "zzy", "sxm"};

    /*
    * 方式一: 公有数组变成私有的 并增加一个公有不可变列表
    * */
    public static final List<String> VALUES =
            Collections.unmodifiableList(Arrays.asList(PRIVATE_VALUES));
    /*
    * 方式二: 添加一个公有方法 返回私有数组的一个拷贝
    * */
    public static final String[] values() {
        return PRIVATE_VALUES.clone();
    }
}
